﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations;
using Sistema.Dominio.ValidationAttribute;
using System.Runtime.Serialization;
using System.ComponentModel;

namespace Sistema.Dominio
{
    [DataContract]
    public class LoginVO:EntidadeValidavel
    {
        private String _login;
        private String _senha;
        private String _perguntaSecreta;
        private String _respostaSecreta;
           
        public LoginVO()
            :base(typeof(LoginVO))
        {
            this._login = string.Empty;
            this._senha = string.Empty;
            this._perguntaSecreta = string.Empty;
            this._respostaSecreta = string.Empty;
        }

        [DataMember]
        [Required(ErrorMessage="Campo Login é obrigatório.")]
        [StringLength(50,ErrorMessage="Campo Login deve conter no máximo 50 caracteres.")]
        public String Login
        {
            get 
            { 
                return _login; 
            }
            set
            {
                _login = value; base.RaisePropertyChanged("Login");
            }
        }

        [DataMember]
        [Senha(ErrorMessage="Senha informada inválida.")]
        public String Senha
        {
            get { return _senha; }
            set { _senha = value; base.RaisePropertyChanged("Senha"); }
        }

        [DataMember]
        public String PerguntaSecreta
        {
            get { return _perguntaSecreta; }
            set { _perguntaSecreta = value; }
        }

        [DataMember]
        public String RespostaSecreta
        {
            get { return _respostaSecreta; }
            set { _respostaSecreta = value; }
        }
    }

    public enum enumPerguntaSecreta
    {
        [Description("Aniversário da mãe")]
        Aniversario_da_mae,
        [Description("Melhor amigo de infância")]
        Melhor_amigo_de_infancia,
        [Description("Nome do primeiro animal de estimação")]
        Nome_do_primeiro_animal_de_estimacao,
        [Description("Professor favorito")]
        Professor_favorito,
        [Description("Personagemhistórico favorito")]
        Personagem_historico_favorito,
        [Description("Profissão do avô")]
        Profissao_do_avo

    }
}
